package com.zxy.bilibili.util;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

/**
 * 文件工具类
 *
 * @author ZENG.XIAO.YAN
 * @version 1.0
 * @Date 2020-08-08
 */
public class FileUtils {
    private FileUtils() {
    }

    /**
     * description: 递归查找所有文件，没有文件时返回空集合
     * @param sourceFile
     * @return java.util.List<java.io.File>
     * @author ZENG.XIAO.YAN
     * @time 2020-08-08 12:43
     */
    public static List<File> listAllFile(File sourceFile) {
        List<File> result = new ArrayList<>();
        if (sourceFile.isFile()){
            result.add(sourceFile);
        } else {
            File[] files = sourceFile.listFiles();
            if (null != files && files.length > 0) {
                for (File file : files) {
                    result.addAll(listAllFile(file));
                }
            }
        }
        return result;
    }

}
